package com.oauth2.springsecurityoauth2demo.service;

import com.oauth2.springsecurityoauth2demo.pojo.User;
import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.security.core.authority.AuthorityUtils;
import org.springframework.security.core.userdetails.UserDetails;
import org.springframework.security.core.userdetails.UserDetailsService;
import org.springframework.security.core.userdetails.UsernameNotFoundException;
import org.springframework.security.crypto.password.PasswordEncoder;
import org.springframework.stereotype.Service;

/**
 * @author wangning
 * @create 2021-03-29 22:33
 */
@Service
public class UserService implements UserDetailsService {
	@Autowired
	private PasswordEncoder passwordEncoder;

	@Override
	public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
		String password = passwordEncoder.encode("123456");
		return new User("abc", password,
				AuthorityUtils.commaSeparatedStringToAuthorityList("admin,normal,ROLE_abc")
		);
	}

}
